Method of reading document image date

ABSTRACT

In a method of reading document image data scanned by a scanner apparatus, upon receipt of a scan start command from the data reception apparatus, memory areas are set for storing image data in a data storage section of the data reception apparatus to set a reading condition; a scan start command is transmitted to start reading operations; the scanner apparatus is instructed to transmit the image data, to receive and store the image data in the data storage section; the image data is transferred to the data reception apparatus in response to a data transferring request command from a host apparatus; a document end signal received from the scanner apparatus is transmitted to the data storage section; and subsequent original document sheets are fed based on available status of the data storage section, without transmitting another scan start command.

CROSS-REFERENCE TO RELATED APPLICATION

This is a continuation application of Ser. No. 12/457,523 filed on Jun.15, 2009.

BACKGROUND OF THE INVENTION

1. Technical Field

The present invention relates to a method of reading document image datascanned by a scanner apparatus and of transferring the image data to adata reception apparatus.

2. Description of the Related Art

An image reading system in which a scanner apparatus is connected to adata reception apparatus such as a computer apparatus or the like hasbeen known widely (for example, Japanese Laid-Open Patent PublicationNo. H10-260927).

The scanner apparatus in such a system is configured to read an image ofan original document using an image sensor such as a CCD or the like,perform 2/multivalue conversion (A/D conversion) on the image data tomake various corrections, and then, transfer the data to the datareception apparatus.

Meanwhile, the data reception apparatus is comprised of a centralprocessing unit (CPU), HDD (hard disk) for storing execution programssuch as application programs, driver programs and the like, memory (RAM)for storing various kinds of data, keyboard, monitor screen and the liketo be direct interfaces with a user, etc. and is configured to execute avariety of processing corresponding to a purpose of the user.

The scanner apparatus and data reception apparatus are connected via aninterface such as, for example, RS232C, SCSI, USB, PCe, Ethernet or thelike, and the scanner apparatus is operated via the driver programaccording to descriptions instructed on the application program screenby the user, and performs up to transfer of image data starting withreading the original document. In addition, the driver program is formedof, for example, a general-purpose driver program conforming tospecifications such as TWAIN, ISIS or the like.

Herein, a conventional example is described in the case where thescanner apparatus of the above-mentioned system has an original documenttransport mechanism, and reads an original document transported by theoriginal document transport mechanism.

First, a user sets reading conditions such as resolution, document size,color/monochrome and the like on an application screen displayed on ascreen of a computer (hereinafter, referred to as a PC) as shown in FIG.12 (STEP 3000), and selects a scan button for instructing the apparatusto start reading (STEP 3001). After the user selects the scan button,the following exchange shown in FIG. 13 is performed between theapplication and driver, and between the driver and scanner apparatus.

The application first initializes the scanner apparatus via the driver(not shown), and then, transmits a “reading condition setting command”that is a command for requesting a reading condition setting of thefirst page, and the scanner apparatus receives this command via thedriver (STEP 3002). Next, the application transmits a “scan startcommand (Start Scan)” that is a command for requesting scanning of thefirst page (STEP 3003), and the scanner apparatus receiving this scanstart command transports the first original sheet to a predeterminedreading position, and drives a reading sensor formed of a CCD or thelike to read the first original sheet image (STEP 3004).

Next, the scanner apparatus receives an “image data transfer command”for requesting transfer of image data of the first page from theapplication (STEP 3005), and after receiving the command, transfers theimage data of the first page to the driver, and the driver transmits thedata to the application (STEP 3006). After receiving all the image dataof the first page, the application inquires of the scanner apparatuswhether or not a next original sheet is present (not shown). When thenext original sheet is present, the application transmits a readingcondition setting command of the second page (STEP 3007), and then,transmits a scan start command of the second page (STEP 3008). Thesecommands are transmitted to the scanner apparatus. The scanner apparatusreceives the scan start command of the second page, and then, feeds thesecond original sheet to read the image (STEP 3009). Then, as in STEP3005 and STEP 3006 as described above, the scanner apparatus transfersthe image data in response to the image data transfer command (STEP3010).

As described above, in the conventional image reading system, a scanstart command (Start Scan) is transmitted from the application programon a page basis, and the scanner apparatus starts feeding an originalsheet of the next page after receiving the scan start command.Therefore, during transferring the image data to the PC from the scannerapparatus, even when the scanner apparatus side is in conditions capableof reading the next original sheet, the scanner apparatus cannot feedand read the next original sheet, and the time required for the entireprocessing becomes long.

Further, conventionally, before the application outputs an image scaninstruction signal (Start Scan) after acquiring image data correspondingto one page, the driver and scanner apparatus exchange commands andresponses for checking whether or not the next original sheet is presentand the like, and the image scan instruction signal (Start Scan command)is first output after the exchange is finished. The exchange between thedriver and the scanner apparatus is performed by communicationstherebetween, requires a time, further delays output of the image scaninstruction signal (Start Scan command) corresponding to the time, andthereby increases useless time during which feeding and reading of thenext original sheet is not performed. Then, the effect of thecommunication time on the entire processing time increases, as thenumber of original document sheets to read consecutively increases.

Therefore, it is an object of the present invention to reduce the entireprocessing time of from original document reading to image transfer whena scanner apparatus consecutively reads a plurality of image originaldocument sheets in a system where the image data read by the scannerapparatus is transferred to a data reception apparatus.

BRIEF SUMMARY OF THE INVENTION

To attain the above-mentioned object, the invention providesconfigurations as described below.

In an image reading system having a scanner apparatus for reading anoriginal document image, and a data reception apparatus for receivingimage data transferred from the scanner apparatus, the data receptionapparatus has a receiving section that receives image data transferredfrom the scanner apparatus, a received data storage section that storesthe image data received in the receiving section, and a driver programexecuting section that executes a driver program for operating thescanner apparatus to transmit a scan start command for instructing thescanner apparatus to start reading operation to the scanner apparatus,the scanner apparatus has a feeding section that feeds an originaldocument sheet to a predetermined reading position, a reading sensorthat reads an image of the original document sheet fed by the feedingsection, a transfer data storage section that stores image data from thereading sensor, a transfer section that transfers the image data storedin the transfer data storage section to the data reception apparatus,and a scanner control section that controls the feeding section and thereading sensor, and the scanner control section controls the feedingsection independently of the scan start command from the data receptionapparatus to start feeding of second and subsequent original documentsheets.

In the invention, in a system where a scanner apparatus reads images ofa plurality of original document sheets consecutively, and transfers theimage data to a data reception apparatus, it is configured that readingof the first original sheet is executed based on an image scaninstruction signal (Start Scan command) from an executing means of adriver program of the data reception apparatus, and that successivesecond and subsequent original document sheets undergo execution ofimage reading independently regardless of the presence or absence of animage scan instruction signal (Start Scan command), and the followingeffects are produced.

Conventionally, with respect to second and successive original documentsheets subsequent to the first original sheet, after the driverexecuting section on the data reception apparatus side receives imagedata of the first original sheet, the scanner apparatus starts imagereading after waiting for the image scan instruction signal (Start Scancommand) from the driver executing section. In contrast thereto, in theinvention, since the scanner apparatus starts image readingindependently, it is possible to set an interval time between originaldocument sheets at a minimum limit required for image reading. It isthereby possible to remarkably improve the efficiency of the processingfor reading images of a plurality of successive original documentsheets.

In other words, the scanner apparatus reads an image of the firstoriginal sheet based on a scan instruction signal from the driverexecuting section on the data reception apparatus side, and with secondand subsequent original document sheets, executes image readingconsecutively, for example, corresponding to available memory of thescanner apparatus, and it is thereby possible to reduce the intervaltime.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is an explanatory view of the entire configuration showing animage reading system according to the invention;

FIG. 2 is an explanatory view of the entire scanner apparatusconstituting part of the system of FIG. 1;

FIG. 3 is a block diagram illustrating a control configuration of thesystem of FIG. 1 and shows the control configuration between the scannerapparatus and data reception apparatus;

FIG. 4 shows a flow of image data in the scanner apparatus;

FIG. 5 shows a flow of image data in the data reception apparatus;

FIG. 6 shows a flow of information in the entire image reading system;

FIG. 7 is a flowchart to show processing of a higher driver executingsection;

FIG. 8 is a flowchart to explain processing of a lower driver executingsection;

FIG. 9 shows a procedure of data transfer processing for the scannerapparatus to transfer data to the lower driver executing section;

FIG. 10 shows a procedure for the scanner apparatus to write image datain a transfer buffer;

FIG. 11 shows procedures of original document transport and readingoperation of the scanner apparatus;

FIG. 12 is an explanatory view of an application screen of aconventional image reading system; and

FIG. 13 is a diagram illustrating a flow of information of theconventional image reading system.

DETAILED DESCRIPTION OF THE INVENTION

The present invention will specifically be described below based onpreferred embodiments of the invention shown in drawings.

An image reading system according to the invention has a personalcomputer (hereinafter, referred to as PC 1) that is a data receptionapparatus A, and a scanner apparatus B. As shown in FIG. 1, the PC 1 andscanner apparatus B are connected with a transmission cable (USB cable)100, and are configured to serial-transfer image data and control signalmutually.

In addition, the PC 1 may be connected to a network or the like, and thePC1 and scanner apparatus B may be connected via a network, and may beconnected in a cable or wireless manner. Further, the scanner apparatusB may be a complex apparatus provided with various functions such as aprinter, facsimile and the like, and is only required to read imagedata.

[Configuration of the Data Reception Apparatus A (PC 1)]

As shown in FIG. 3, the PC 1 has a central processing unit (hereinafterreferred to as a “CPU”) 2, a storage section 3 formed of a hard disk orthe like, an input apparatus 5 such as a key board, an output apparatus6 such as a monitor screen, and RAM “D” and RAM “A” that is memory fortemporarily storing image data and the like. The storage section 3stores an operating system (OS) program 30, an application program 31that is a user interface of the scanner apparatus B, and a driverprogram 32 (higher driver program 32 a, lower driver program 32 b) foroperating the scanner apparatus B, where the CPU 2 executes each of theprograms using cache (not shown). Further, the CPU 2 is connected to adata transfer section (USB controller) 48 of the scanner apparatus B viaa data receiving section (USB controller) 50. Accordingly, as shown inFIG. 1( b), the CPU 2 has functions as an OS executing section 20 forexecuting the operating system (OS) program 30, an application executingsection 21 for executing the application program 31, and a driverprogram executing section 22 for executing the driver program 32.

Further, in conformity with specifications such as TWAIN, ISIS, WIA,etc. the driver executing section 22 has functions as a higher driverexecuting section 22 a for delivering image data to the application(executing section) and storing image data in the hard disk and thelike, and a lower driver executing section 22 b located between thescanner apparatus B and higher driver executing section 22 a to deliverimage data from the scanner apparatus B to the higher driver executingsection 22 a.

[Configuration of the Scanner Apparatus]

FIG. 2 shows a configuration of the scanner apparatus B. The scannerapparatus B is comprised of a paper feed tray 11 to mount originaldocument sheets, a paper discharge tray 12, a transport path 13 forguiding an original document sheet from the paper feed tray 11 to paperdischarge tray 12, and read platens 14 a, 14 b disposed in the transportpath 13. The read platen is formed of the first read platen 14 a to readan image on the back side of the original document sheet moving in thetransport path 13, and the second read platen 14 b to read an image onthe front side of the original document sheet. In the apparatus as shownin the figure is provided a third platen (flat head platen) 15 to set anoriginal document in a resting manner, separately from the first andsecond platens 14 a, 14 b for reading images on the front and back sidesof the original sheet moving from the paper feed tray 11 to paperdischarge tray 12. The third platen 15 is disposed on the top of acasing 10 to form substantially the same plane with the second platen 14b.

In the first platen 14 a is disposed a first image reading unit 16 forreading an image on the back side of an original document sheet movingthrough the transport path 13 at a predetermined velocity in a firstreading position R1, and in the second platen 14 b is disposed a secondimage reading unit 17 for reading an image on the front side of theoriginal document sheet in a second reading position R2. The secondimage reading unit 17 is configured to be able to move to positionsbetween the second and third platens 14 b, 15 to read an image of anoriginal document sheet that is mounted and set on the third platen 15.A carriage 17 x is coupled to a traveling belt 18 coupled to a carriagemoving motor Mc. Accordingly, by controlling rotation of the carriagemoving motor Mc, the carriage 17 x is positioned immediately under thesecond platen 14 b or the third platen 15 selectively, and in the thirdplaten 15, is configured to read the image while moving along theoriginal document sheet set on the platen.

[Configuration of the Image Reading Unit]

The first image reading unit 16 and second image reading unit 17 havethe same configuration, and one of the units will be described with thesame reference numerals assigned. The image reading unit 16 (17) showsthe case of reading an image by the shrinkage optical system. A lightsource 21 emits light to the first platen 14 a or second platen 14 b,the reflected light from the original document passed through the platenis guided to a condenser lens 23 via mirrors 22, and the condenser lens23 forms an image on the reading sensor. The reading sensors 24 a, 24 bshown in the figure are formed of photoelectric conversion elements suchas CCDs, and convert the imaging light from the condenser lens 23 intoan electrical signal to output.

[Configuration of a Paper Feed Section]

The paper feed tray 11 is formed of a tray to mount a plurality oforiginal document sheets, and the tray is provided with a tray sensor Stfor detecting the presence or absence of an original document. Then, inthe paper feed tray 11 are disposed a pick-up roller 25 for picking uporiginal document sheets, a separation roller 26 for separating thesheets picked up by the pick-up roller 25 into a single sheet, and aresist roller 27 for causing the original document sheet fed from theseparation roller 26 to temporarily wait. On the downstream side of theresist roller 27 are provided a first feed roller 28 and a second feedroller 29. Then, the original document sheets from the paper feed tray11 are separated into a single sheet through the pick-up roller 25 andseparation roller 26, and the original document sheet is fed to theresist roller 27, stops temporarily in the resist roller position, andthen, by driving and rotating the resist roller 27, is fed to the firstand second feed rollers 28, 29 on the downstream side.

The paper feed section is formed of the resist roller 27 and first andsecond feed rollers 28, 29, and these rollers are coupled to a feedmotor Mf, and configured to feed an original document sheet at the samecircumferential velocity. In other words, after feeding a precedingoriginal document sheet from the paper feed tray 11 toward the readplaten 14 a (14 b), the apparatus of FIG. 1 picks up and separates asubsequent next original document sheet from the paper feed tray 11, andcauses the sheet to wait in the resist roller position on the downstreamside (pre-feeding wait control). Then, the original document sheet isfed from the resist roller 27 to the first platen 14 a at predeterminedtiming described later, and such control is the premise.

In addition, in the invention, the paper feed section for feeding anoriginal document sheet to the first platen 14 a can be formed of theabove-mentioned pick-up roller 25, separation roller 26, resist roller27 and first and second feed rollers 28, 29. In this case, by control ofa CPU 41 described later, the pick-up roller 25 and separation roller 26are driven and rotated to pick up original document sheets from thepaper feed tray 11 to separate into a single sheet. Then, the resistroller 27 and first and second feed rollers 28, 29 are controlled tofeed the original document sheet fed from the paper feed tray 11 towardthe first platen 14 a.

In the transport path 13, a third feed roller 30 is disposed on thedownstream side of the first platen 14 a to feed the original documentsheet from the first platen 14 a to the second platen 14 b, and on thedownstream side of the second platen 14 b are disposed a carrying-outroller 31 for scooping the original document sheet from the platensurface and a paper discharge roller 32 in this order. The paperdischarge roller 32 is configured to carry out the original documentsheet from the carrying-out roller 31 to the paper discharge tray 12.

[Driving Mechanism of the Paper Feed Section]

A driving mechanism of each transport roller disposed in the paper feedtray 11 and transport path 13 is configured as described below, forexample. The pick-up roller 25 and separation roller 26 are coupled to apaper feed motor Mk, and forward rotation of the paper feed motor Mkrotates the pick-up roller 25 and separation roller 26 in the paper feeddirection. Concurrently therewith, the pick-up roller 25 is configuredto fall onto the uppermost sheet on the tray from a standby positionabove the paper feed tray by rotation of the paper feed motor Mk.Further, by backward rotation of the paper feed motor Mk, the pick-uproller 25 is lifted to the standby position above the paper feed tray towait.

By forward and backward rotation of the paper feed motor Mk, theoriginal document sheets on the paper feed tray are separated into asingle sheet, and the sheet is fed to the resist roller 27, and waits inthis position. Then, the resist roller 27 and first, second and thirdfeed rollers 28, 29, 30 are coupled to the feed motor Mf to feed theoriginal document sheet at the same circumferential velocity.Accordingly, the CPU 41 rotates the feed motor Mf forward to rotate therollers in a predetermined direction, and thereby feeds the originaldocument sheet to the first platen 14 a and second platen 14 b in thisorder along the transport path 13 at a predetermined velocity.

[Configuration of a Paper Feed Sensor]

As shown in FIG. 2, in the transport path 13 are disposed a resistsensor Sr, first read sensor Se1, second read sensor Se2 and paperdischarge sensor Sh. The resist sensor Sr is disposed between the secondread sensor Se2 and paper discharge sensor Sh, and detects that thefront end of the original document sheet fed from the paper feed tray 11reaches the resist roller position. The first read sensor Se1 isdisposed upstream from the first platen 14 a, and detects the front endof the original document sheet fed from the resist roller 27. The secondread sensor Se2 is disposed upstream from the second platen 14 b, anddetects the front end of the original document sheet fed from the thirdfeed roller 30. Further, the paper discharge sensor Sh detects the frontand rear ends of the original document sheet fed from the carrying-outroller 31.

Then, the first read sensor Se1 and second read sensor Se2 detect thefront end of the sheet, and are used as reference signals to set animage reading start position and reading end position in the firstplaten 14 a and second platen 14 b on the downstream side. Further, eachof sensors Se1 and Se2 detects the front and rear ends of the sheet, andis used as a detection signal to judge a jam of the original documentsheet. The paper feed tray 11 may be provided with a size detectionsensor, not shown, to detect a size of the original document sheetmounted on the tray. In this embodiment, as described later, a userdesignates an original document size from the PC 1.

The CPU 41 (described later) starts and rotates the paper feed motor Mkfor the pick-up roller 25 and separation roller 26 based on a passagesignal of the rear end of the original document sheet from the resistsensor Sr, and feeds a subsequent sheet to the resist roller position.Further, the CPU 41 feeds the subsequent sheet toward the first platen14 a from the resist roller position on the condition as described belowusing a sheet rear end detection signal from the first read sensor Se1as the reference.

[Control Configuration of the Scanner Apparatus]

The scanner apparatus B is provided with a control board (hereinafterreferred to as a “scanner controller”) 40 as shown in FIG. 3. Thescanner controller 40 has the CPU 41 that is a control section forcontrolling the scanner apparatus B, ROM 42 for storing the controlprogram, a storage section (RAM) 43 to temporarily store image data,information about the image data and the like, DSP 44 (44 a, 44 b) forperforming correction processing on an image signal from a readingsensor 24, a control port 45 of the scanner apparatus, and the USBcontroller 48 to transfer the image data to the outside. The control CPU41 is formed of IC chips for executing control programs to control thereading sensors 24 a, 24 b (CCD 1, CCD 2 shown in FIG. 3) describedpreviously, light source 21 (lamp 1, lamp 2 shown in FIG. 3), paper feedmotor Mk, feed motor Mf, etc. The control CPU 41 functions as anoperation control section for executing the control programs stored inthe ROM 42, while functioning as a memory control section forcontrolling the storage section (RAM) 43. Further, as described later,the CPU 41 also has the function as a switching means for switchingbetween paper feed modes corresponding to the information from the PC 1.

Further, the storage section (RAM) 43 has an image processing buffer 43a that is an area to temporarily store image data prior to beingprocessed in the DSP 44, a buffer 43 b (transfer data storage section)that is an area to temporarily store image data to be transferred to thePC 1, an information register 43 c to store information about each imagedata (block image data) on the unit of transfer, and a next originalinformation register 43 d to store information on whether or not thereis a next original to read.

The above-mentioned control configuration will be described. The controlCPU 41 conveys control commands to respective driver circuits to controla carriage moving motor Mc, paper feed motor Mk, and feed motor Mf viathe control port (GPIO) 45 so as to control a start, halt and rotationvelocity of each motor. Similarly, the light sources (lamp 1, lamp 2) 21of the first and second reading units 16, 17 are controlled to light viathe control port (GPIO) 45. Meanwhile, detection signals of the traysensor St, resist sensor Sr, first and second read sensors Se1, Se2, andpaper discharge sensor Sh are conveyed to the control CPU 41 via thecontrol port (GPIO) 45.

The image data from the first reading sensor (CCD 1) 24 a for reading aback-side image of the original sheet and the second reading sensor (CCD2) 24 b for reading a front-side image is converted into a digitalsignal by a converter not shown and loaded to a data bus via a gatearray (FPGA) 47 and a scanner interface (SC I/F) 46. The image data isstored in the image processing buffer 43 a. Then, as shown in FIG. 4,each image data is subjected to image processing on a block basis by theback-side image processor (DSP1) 44 a or front-side image processor(DSP2) 44 b, and temporarily stored in the transfer buffer 43 b.

When the image data stored in the transfer buffer (transfer data storagemeans) 43 b reaches a predetermined one-transfer block (1 MB in thisembodiment), the CPU 41 reads the image data (hereafter, referred to asblock image data) corresponding to one transfer, and attachesinformation about this block image data using an information attachingmeans 49. The block image data with the information attached is outputto a USB controller 50 on the PC 1 side from the USB controller (datatransfer section) 48.

The information attaching means 49 is executed by the control CPU 41according to a predetermined program, and attaches information abouteach block image data stored in the information register 43 c to eachblock image data. The information in this case is (1) front/backinformation, (2) final block information (information on whether or notthe data is of the final block of the page), (3) next-originalpresence/absence information, and (4) size information (size informationof the block image data).

[Control Configuration of the PC 1]

An image data processing method in the PC 1 will be described next basedon FIG. 5. In addition, the lower driver in FIG. 5 conceptually showsthe function for the CPU 2 to execute the lower driver program 32 bstored in the storage section 3 to perform as the lower driver executingsection 22 b. Similarly, the higher driver conceptually shows thefunction for the CPU 2 to execute the higher driver program 32 a storedin the storage section 3 to perform as the higher driver executingsection 22 a, and a memory monitor shows the function for the CPU 2 toexecute a memory monitoring program included in the lower driver program32 b to perform as a memory monitoring section 22 c.

The lower driver sets each memory area (MA 1, MA 2, MB 1, MB 2) to storeimage data in the RAM “D” corresponding to the reading condition. Morespecifically, as shown in FIG. 5, the driver sets the storage spacecorresponding to image data of two or more pages of the originaldocument to read. In other words, in the case of the two-side mode, inthe RAM “D” are set the memory areas MA1, MA2 capable of storing imagedata corresponding to two-page front-side image data, and memory areasMB 1, MB2 corresponding to two pages capable of storing the back-sideimage data. In the case of the one-side mode, in the RAM “D” are setonly the memory areas MA1, MA2 capable of storing image datacorresponding to two-page front-side image data.

Then, the driver receives the block image data transferred from thescanner apparatus from the USB controller 50 to write in each memoryarea. This writing is performed on a block basis, and at the time theimage data corresponding to one page is written in either buffer of theRAM “D”, when an “image data transfer command” has been received fromthe higher driver executing section 22 a, the lower driver reads theimage data written in the RAM “D” to deliver to the higher driverexecuting section 22 a (in other words, the image data corresponding toone page in the RAM “D” is copied to the RAM “A”.) At the time the imagedata corresponding to one page is written in either buffer of the RAM“D”, when an “image data transfer command” has not been received fromthe higher driver executing section 22 a, the lower driver waits for thereception, and then, reads the image data written in the RAM “D” todeliver to the higher driver executing section 22 a. Then, when anavailable area for image data (transfer block) set beforehand is formedin the RAM “D”, the lower driver executing section 22 b issues a “datatransfer instruction command (Read Scan)” to the scanner apparatus B.

Meanwhile, the state of each memory area is monitored by the memorymonitor.

The memory monitor performs processing for counting the “final block”information attached to the image data (described later, block imagedata) transferred from the scanner apparatus B using a counter 1 (51),and processing for counting the number of (stop commands, STOP)transmitted from the higher driver using a counter 2 (52), and using thecount information, monitors each memory area, while performing a replyto inquiry about “whether or not a next original sheet is present” fromthe higher driver, selection of a buffer to transfer, selection of abuffer to write the image data, and the like.

Meanwhile, the higher driver sets the memory area MX for imageprocessing at the RAM “A”, for example, which varies with theconfiguration of the higher driver program. The RAM “A” is set at aspace capable of storing image data of one page of the original documentto read, and is configured to receive the image data from the RAM “D”.

A brief description of the processing procedure is given below accordingto FIG. 6 using the case of the one-side read mode as an example. First,a user starts the application program that is a user interface of thescanner apparatus on the monitor screen of the output apparatus 6 of thePC 1, and when the user selects “capture of image” on the screen, thedriver program (higher driver program) starts to display a settingscreen (driver screen) for image reading conditions enabling selectionof the resolution, read mode, etc. as shown in FIG. 12 on the monitorscreen of the PC 1.

The user sets the reading conditions such as the image, resolution,document size and the like on the driver screen, while selecting anoriginal document set state in the scanner apparatus B, for example,setting an original document sheet on the paper feed tray 11 (ADF mode)or setting an original document sheet on the flat bed platen 15 (flatbed mode) (STEP 1001), and selects a scan button to start scanning (STEP1002).

When various kinds of setting information (reading condition settingcommand) set by the user in STEP 1001 are transmitted to the lowerdriver executing section 22 b, the lower driver executing section 22 btransmits the same command as this command to the scanner apparatus B(SETP 1003).

Next, the higher driver executing section 22 a transmits a “scan startcommand (Start Scan)” that is a command for requesting a scan start tothe lower driver executing section 22 b, and the lower driver executingsection 22 b transmits the same command as this command to the scannerapparatus B (STEP 1004). Further, the higher driver 22 a transmits an“image data transfer command (Read Scan)” that is a command for givinginstructions for transmission of image data to the lower driverexecuting section 22 b, and the lower driver executing section 22 bfurther transmits the same command to the scanner apparatus B (STEP1005).

The scanner apparatus B receiving the “scan start command “Start Scan”)drives the paper feed motor Mk and feed motor Mf to transport the firstoriginal sheet on the paper feed stacker 11 to the second readingposition R2, while reading the original sheet image by the CCD 2 (24 b)(STEP 1006).

Upon receiving the “data transfer command (Read Scan)” of STEP 1006, thescanner apparatus B transmits the image data to the lower driverexecuting section 22 b sequentially while reading the first originalsheet, and further, the lower driver executing section 22 b transmitsthe image data to the higher driver executing section 22 a (STEP 1007).

The scanner apparatus B continues to transfer the image data to thelower driver executing section 22 b after finishing transport andreading of the first original sheet. Then, when it is confirmed that asufficient available space to store image data corresponding to one pageof the second original sheet is reserved in each of the transfer buffer43 b and image processing buffer 43 a of the RAM 43 and that apredetermined interval is made between the first and second originalsheets, the scanner apparatus B starts feeding the second originalsheet, while starting reading the second original sheet by the CCD 2 (24b). In this case, since the reading conditions are common in all thepages, reading is performed on the same conditions as the readingconditions of the first original sheet fed earlier (STEP 1008).

The scanner apparatus B transmits the image data of the second sheet tothe lower driver executing section 22 b while reading the second sheetcorresponding to the available status of the memory (RAM “D”) of thelower driver executing section 22 b (STEP 1009), but the lower driverexecuting section 22 b has not received the “data transfer command” forthe second sheet from the higher driver executing section 22 a, andtherefore, does not transfer the image to the higher driver executingsection 22 a. In addition, in FIG. 6, it is shown that the scannerapparatus B starts feeding and reading of the second original sheetafter completing transfer of all the image data of the first sheet tothe lower driver executing section 22 b. However, as described above, itis possible to feed the second original sheet when it is confirmed thata sufficient available space to store image data corresponding to onepage of the second original sheet is reserved in each of the transferbuffer 43 b and image processing buffer 43 a of the RAM 43 and that aninterval with a predetermined length is made from the preceding originalsheet as described above, and therefore, feeding and reading of thesecond original sheet can be started during transferring the image dataof the first sheet.

After acquiring all the image data of the first sheet, the higher driverexecuting section 22 a transmits the “scan start command (second sheet,Start Scan)” that is a command for requesting a scan start for thesecond sheet (STEP 1010), and the “data transfer command (second sheet,Read Scan)” that is a command for giving instructions for transmissionof image data of the second sheet (STEP 1011) to the lower driverexecuting section 22 b. Since the image data of the second sheet isalready transferred to the lower driver executing section 22 b andstored in the RAM “D”, the lower driver executing section 22 b receivingthe data transfer command (second page) of STEP 1011 immediatelytransmits the image data of the second sheet to the higher driverexecuting section 22 a.

The outline of the flow of the entire processing is as described above.Described below are details of processing procedures executed by thehigher driver executing section 22 a, lower driver executing section 22b, and control CPU 41 according to respective flows.

[Processing of the Higher Driver Executing Section 22 a]

The processing procedure of the higher driver executing section 22 awill be described according to the flow of FIG. 7. When a user startsthe application program and selects “capture of image” on the screen,the driver program (higher driver program) starts to display a settingscreen (driver screen) for image reading conditions enabling selectionof the resolution, read mode, etc. as shown in FIG. 12 on the monitorscreen of the PC 1.

The user sets the reading conditions such as the image, resolution,document size and the like on the driver screen, while selecting anoriginal document set state in the scanner apparatus B, for example,setting an original document sheet on the paper feed tray 11 (ADF mode)or setting an original document sheet on the flat bed platen 15 (flatbed mode) (ST001), and selects a scan button to start scanning (ST002).In ST001, various kinds of setting information set by the user aretransmitted to the lower driver executing section 22 b (ST003). Inaddition, not shown in the figure, after acquiring various kinds ofsetting information from the higher driver executing section 22 a, thelower driver executing section 22 b transmits the same settinginformation to the scanner apparatus B.

Then, after reserving a memory area MX that is a sufficient area tostore image data corresponding to one page in the RAM “A” (ST004), thehigher driver executing section 22 a transmits an “image scan startcommand (Start Scan)” that is a command for giving instructions for astart of all reading processing of from image scanning of the scannerapparatus B to transmission of image data to the higher driver executingsection 22 a, and a “data transfer instruction command (Read Scan)” thatis a command for giving instructions for transmission of image data(ST005, ST006).

After transmitting the “data transfer instruction command (Read Scan)”in ST006, the higher driver executing section 22 a waits for image dataof one page to be prepared in the RAM “D” of the lower driver executingsection 22 b. When the image data of one page is prepared in the RAM “D”of the lower driver executing section 22 b, the higher driver executingsection 22 a receives image data of a predetermined block that isbeforehand determined (ST007), and determines whether or not the blockdata is a final block of the page i.e. whether or not the image data ofone page is received (ST008).

By repeating steps ST006 to ST008, the higher driver executing section22 a continues to receive the image data from the lower driver executingsection 22 b on a block basis, and when receiving the image data of onepage, outputs an instruction (stop command Stop Scan, ST009) forinstructing the lower driver executing section 22 b to stop transmissionof image data and the like to the executing section 22 b. The executingsection 22 a delivers the image data of one page to an applicationexecuting section 100, and then, release the RAM “A”. Next, theexecuting section 22 a transmits a command (Get Status) for instructingthe lower driver executing section 22 b to transmit status informationincluding whether or not image data of a next page is present (whetheror not image data to transmit to the higher driver executing section 22a is present) to the executing section 22 b (ST010).

The executing section 22 a receives “information of presence/absence ofnext-page image data” from the lower driver executing section 22 b(ST011), and determines “presence/absence of next-page image data” usingthe information (ST012), and when the image data of the next page is notpresent, the processing of the higher driver executing section 22 a isfinished. When there is the image data of the next page, as in stepsST003, ST005, the section 22 a transmits various reading conditions(parameters) to the lower driver executing section 22 b, and furthertransmits “Start Scan” to the lower driver executing section 22 b(ST013, ST014).

Herein, after transmitting the command “Read Scan” for instructing thesection 22 b to transmit the image data to the lower driver executingsection 22 b in step ST006, the waiting time until a reception start ofimage data differs corresponding to the processing status of the scannerapparatus B and lower driver executing section 22 b. In the case of thefirst original sheet, the scanner apparatus B starts scanning by “StartScan” from the higher driver executing section 22 a, and the waitingtime becomes long. In the invention, however, with respect to second andsubsequent original sheets, as described above, it is possible toprepare image data of the next original sheet by starting feeding of thenext original sheet and executing reading independently irrespective ofwhether or not “scan start instruction “(Start Scan)” is present, and itis thereby possible to reduce the waiting time. The waiting time occurscorresponding to the number of original sheets, and therefore, theeffect by reductions in the waiting time increases on the processingtime of the entire system, as the number of original sheets to readincreases.

Further, since the scanner apparatus B starts scanning the next originalsheet earlier, the next data is already stored in the RAM “D” of thelower driver executing section 22 b at the time the higher driverexecuting section 22 a requests the image data, and the waiting time ofthe higher driver executing section 22 a becomes extremely short.

[Operation Flow of the Lower Driver Program]

The processing procedure of the lower driver executing section 22 b willbe described according to the flow of FIG. 8.

Upon receiving various reading conditions (parameters) from the higherdriver executing section 22 a in step ST003, the section 22 b makescounts of the counters 1, 2 (51, 52) cleared (zero) (ST015), andprepares the buffers MA1, MA2 of memory areas capable of storing imagedata of two pages (ST016). Upon receiving “Start Scan” from the higherdriver executing section 22 a in step ST005 (ST017), the section 22 bexecutes the following processing on transmission and reception of imagedata and information with the scanner apparatus B.

The section 22 b transmits a “scan operation start instruction signal(Start Scan)” and “data transfer instruction command (Read Scan)”(ST018, ST027). In addition, in the case of the first original sheet,since the image data storage area corresponding to two pages is reservedin step ST016, the section 22 b transmits “Read Scan” immediately aftertransmitting “Start Scan”. Thereafter, the section 22 b waits until thescanner apparatus B starts scanning the original sheet and image data ofthe first block of the first original sheet is prepared in the transferbuffer RAM 1 (43 b), and when the image data is prepared, informationabout the block image data is transmitted including (1) front/backinformation, (2) final block information (information on whether or notthe block is the final block of the page), (3) next-originalpresence/absence information, and (4) size information (size of theblock image data). Therefore, the section 22 b receives the information(ST028), and corresponding to the information, determines a buffer tostore from two buffers of the RAM “D” (ST029). More specifically, thesection 22 b divides the count value of the buffer 1 by “2”, and whenthe remainder is “0”, selects the MA 1 (front·odd number), whileselecting the MA 2 (front·even number) when the remainder is “1”.

Next, since the block image data is transferred, the section 22 breceives the image data to write in the buffer determined in step ST029(ST030). The section 22 b determines whether or not the block image datais the final block data of the page from the attached information (finalblock information) received in step ST028 (ST031). When the data is notthe final image data, the section 22 b repeats again steps ST027 toST031 a plurality of times until the section 22 b receives the finalblock data to write, and acquires the block data of one page.

When the data is the final block data in step ST0311.e. when all theimage data of the first original sheet is written in the buffer MA 1,the section 22 b increments the counter 1 (51) by “1” (ST032). Then, thesection 22 b determines whether or not a next original sheet is presentfrom the attached information of the final block data (i.e.next-original presence/absence information of the final block data)(ST033), and when the next original sheet is not present, the processingwith the scanner B is finished.

When the next original sheet is present in step ST033, the section 22 bdetermines whether or not there is an available space corresponding toone page of image data of the next page (second page) from values of thecounters 1, 2 (51, 52), and when there is no space, waits for a space tobe made. When the space is made, the section 22 b returns to step ST027to execute up to step ST034, and acquires the image data correspondingto one page of the next-page original sheet from the scanner apparatusB.

Further, after receiving “Start Scan” from the higher driver executingsection 22 a by step ST005, the lower driver executing section 22 bexecutes the following processing on transmission and redeption of imagedata and information with the higher driver executing section 22 a.

The section 22 b determines whether “Read Scan” is received from thehigher driver executing section 22 a by step ST006 (ST019), and furtherdetermines whether or not all the image data of the first original sheetis acquired (image data of the first original sheet is written in thebuffer MA 1) from the information of the counters 1, 2 (51, 52) (ST020).More specifically, the section 22 b checks that the counter 1 (51) has ahigher value than that of the counter 2 (52) by one or more, and therebydetermines that the data to transmit to the higher driver executingsection 22 a is prepared.

When all the image data of the first original sheet is not acquired, thesection 22 b waits for the image data. Then, when the image datacorresponding to one page of the first original sheet is written in theMA 1, the section 22 b starts transfer of the image data on a blockbasis (ST021). Since “Read Scan” is transmitted from the higher driverexecuting section 22 a whenever the section 22 a acquires the image dataon a block basis from the lower driver executing section 22 b, thesection 22 b returns to step ST019 whenever transmitting the image dataon a block basis, repeats steps of steps ST019 to ST021, and transmitsthe image data of the first original sheet to the higher driverexecuting section 22 a. In addition, in selecting a buffer to transmitto the higher driver executing section 22 a, the section 22 b dividesthe count value of the buffer 2 by “2”, and when the remainder is “0”,selects the MA 1 (front·odd number), while selecting the MA (front·evennumber) when the remainder is “1”.

Then, also after transmitting all the image data of the first originalsheet to the higher driver executing section 22 a, the section 22 bdetermines again whether “Read Scan” is received or not in ST019, but asdescribed above, since the higher driver executing section 22 atransmits the stop command without transmitting “Read Scan” whenacquiring the image data corresponding to one page (ST009), thedetermination in step ST019 is negative, and the processing flowproceeds to step ST022.

In step ST022, the section 22 b determines whether or not a stop commandis received. When a stop command is not received, the processing flowreturns to ST019 again. When it is confirmed that a stop command isreceived in step ST022, the section 22 b determines whether or not thesection 22 b receives a command (Get Status), from the higher driverexecuting section 22 a by step ST010, for instructing the section 22 bto transmit the status information including whether or not there isimage data of the next page (whether or not there is image data totransmit to the higher driver executing section 22 a) (ST023).

When it is determined that the command (Get Status) is received, thesection 22 b determines whether or not there is image data of the nextpage (second page) to transfer to the higher driver executing section 22a from the information of the counter 1 (51) and counter 2 (52) (ST024).

More specifically, the count value of the counter 1 (51) is the numberof pages of image data written in the RAM “D”, and the count value ofthe counter 2 is the number of pages of image data transmitted to thehigher driver executing section 22 a from the RAM “D”. Accordingly, whenthe value of the counter 1 (51) is the same as the value of the counter2 (52), all of the image data written in the RAM “D” is transmitted tothe higher driver executing section 22 a, and both of the buffers MA1,MA2 are available for write of the next image data. On the other hand,when the value of the counter 2 (52) is larger than that of the counter1 (51) (i.e. when the value of the counter 1 is not the same as thevalue of the counter 2), the RAM “D” has image data that is nottransmitted yet to the higher driver executing section 22 a and left.

Accordingly, when it is determined that the value of the counter 1 (51)is not the same as the value of the counter 2 (52) in step S024, sincethere is the next-page (second-page) image data, the section 22 btransmits information indicative of the next-page image data beingpresent to the higher driver executing section 22 a (ST025), returns tostep ST019, and transmits the image data after waiting for “Read Scan”from the higher driver executing section 22 a.

When it is determined that the value of the counter 1 (51) is the sameas the value of the counter 2 (52) in step S024, the section 22 btransmits information indicative of no next-page image data to thehigher driver executing section 22 a (ST026), and finishes a series ofprocessing on transmission and reception performed between the section22 b and higher driver executing section 22 a.

[Operation Flow of the Control CPU]

Upon receiving “Start Scan” from the higher driver executing section 22a by ST018 (ST035), the control CPU 41 executes original documenttransport processing, reading processing and transfer processing inparallel with one another.

[Original Document Transport Processing]

The processing procedure of the scanner apparatus of from originaldocument transport to reading will be described according to the flow inFIG. 11.

A determination whether or not an original document is present on thepaper feed tray 11 is made from an output (ON or not) of the tray sensorSt (ST051, ST052). When an original document is not present on the paperfeed tray 11, the scanner apparatus notifies the user of an errormessage. In addition, the original document is mounted with the surfaceto read faced upward (face-up). When the original document is present onthe paper feed tray 11, feeding of the first original sheet is started(ST053).

The paper feed motor Mk is rotated forward and backward to rotate thepick-up roller 25, the original document sheets on the paper feed trayare fed and separated into a single sheet by the separation roller 26,the front end of the first original sheet is struck by the halted resistroller 27, and the sheet is temporarily halted. Immediately before thesheet reaches the resist roller 27, the front end of the sheet isdetected by the resist sensor Sr.

Next, feeding of the original sheet is started by rotation of the feedmotor Mf (ST054). The first original sheet is fed by rotating the feedmotor Mf and thereby rotating the resist roller 27, and first, secondand third feed rollers 28, 29, 30. When the front end of the firstoriginal sheet is detected by the second read sensor Se2 (ST055),reading of original sheet image is started by the CCD 2 (24 b) (ST056).Reading of the first original sheet is continued until the rear endcomes out of the reading position of the CCD 2 (24 b), and during thereading, pre-feeding of the next original sheet (second original sheet)is performed at following timing. When the resist sensor Sr detects therear end of the first original sheet i.e. when the resist sensor Srbecomes OFF (ST057), a determination whether the next original sheet ispresent on the paper feed tray 11 is made from an output of the traysensor Sr. When there is no next original sheet, the original documenttransport processing is finished (ST058).

When the next original sheet is present, in the same processing as instep ST053, feeding of the next original sheet is performed (ST059). Inother words, the paper feed motor Mk is rotated forward and backward torotate the pick-up roller 25, the original document sheets on the paperfeed tray are fed and separated into a single sheet by the separationroller 26, the front end of the second original sheet is struck by thehalted resist roller 27, and the sheet is temporarily halted. Then, aflag of the register (next-original information register 43 d)corresponding to the next-original presence/absence information is setat “presence” (ST060). In addition, when the rear end of the firstoriginal sheet comes out of the resist sensor Sr, the resist roller 27is cut off from driving of the feed motor Mf and halts. Accordingly,when the front end of the second original sheet is struck by the resistroller 27, the resist roller 27 is halted.

Next, when it is confirmed that driving pulses for rotating the feedmotor Mf reach the predetermined number of pulses after the resistsensor Sr detects the rear end of the first original sheet in stepST057, i.e. when it is confirmed that a predetermined interval is madebetween the first and second original sheets (ST061), a determination ismade whether each of the transfer buffer 43 a and image processingbuffer 43 of the RAM 43 has a sufficient available space to store imagedata corresponding to one page of the second original sheet (ST062).When it is confirmed that each buffer has the space, driving of the feedmotor Mf is conveyed to the resist roller 27 to start feeding of thesecond original sheet (ST063). Thus, it is a feature of the inventionthat the driver program and the operation program of the scannerapparatus B are configured to start image reading of the second andsubsequent original sheets by the scanner apparatus B independentlyirrespective of the presence or absence of a scan start command from thehigher driver executing section 22 a. Then, the processing flow returnsto step ST055, and when the front end of the second original sheet isdetected by the second read sensor Se2, the CCD 2 (24 b) starts readingof the second sheet.

Such a procedure is repeated until the original document sheets mountedon the paper feed tray disappear, and the scanner apparatus B therebyperforms the reading processing of all the original document sheetsmounted on the paper feed tray. As described above, in the case of thefirst original sheet, feeding is started to perform reading based on“Start Scan” from the higher driver executing section 22 a. In contrastthereto, in the case of the second original sheet, irrespective of thepresence or absence of “Start Scan 1” from the higher driver executingsection 22 a, feeding is started to perform reading by confirming that apredetermined interval is made between the first and second originalsheets, and that each of the transfer buffer 43 a and image processingbuffer 43 of the RAM 43 has a sufficient available space to store imagedata corresponding to one page of the second (next) original sheet.

[Reading Processing]

According to the flow in FIG. 10, the processing procedure will bedescribed where image data captured to the data bus via the SCI/F (46)is written in the transfer buffer 43 b. Upon receiving “Start Scan” fromthe lower driver executing section 22 b by step ST018, the scannerapparatus B executes scan preparation processing (ST042). For example,the scanner apparatus B performs gain/offset adjustment, shading dataacquisition, and further, since the mode is the ADF mode in thisdescription, shifting of the second image reading unit 17 to a readingposition in FIG. 2 from a predetermined home position, or the like. Thememory control section (CPU 41) 41 b reserves a sufficient availablespace to store image data corresponding to one page of the firstoriginal sheet in each of the transfer buffer 43 a and image processingbuffer 43 b of the RAM 43 (ST043).

When reading of the first original sheet is started in step ST056 of theoriginal document transport processing, the image data from the CCD 24is captured to the data bus via the FPGA (47), GPIO (45), etc. andwriting in the image processing buffer 43 a is started (ST044). Then,the image data of the first original sheet is written in the imageprocessing buffer 43 a in the order in which the CCD 24 acquires. Whenthe image data reaches the predetermined number of lines (64 lines inthis embodiment) (ST045), the image data corresponding to 64 lines isoutput from the image processing buffer 43 a, undergoes various kinds ofprocessing in the DSP 2 (44 b) (ST046), and written in the transferbuffer 43 b (ST047).

Then, since the memory control section 41 b counts the number of linesof the image data written in the transfer buffer 43 b, the section 41 badds the number of lines corresponding to writing in step ST047 (ST048).It is determined whether this count number (the number of lines) reachesthe number of lines corresponding to one page of the original documentsize set by the user in step ST0011.e. whether or not the image datawritten in the transfer buffer 43 b in step ST047 is the final line ofthe first original sheet (ST049), and in a negative determination, theprocessing flow returns to step ST044. Then, steps ST045 to ST049 arerepeated until the image data corresponding to one page of the firstoriginal sheet is written in the transfer buffer 43 b, and when writingof the image data corresponding to one page of the first original sheetis finished, it is determined whether or not a next original sheet ispresent from the “next-original information register 43 d” of stepST060. When there is the next original, steps ST044 to ST049 arerepeated to perform processing on all the original sheets, while whenthere is no next-original, this processing is finished.

In addition, at the time the image data corresponding to one page iswritten in the transfer buffer 43 b in step ST049, with respect to theinformation about each block image data, in the information register 43c is stored (1) front/back information, (2) final block information(information on whether or not the data is of the final block of thepage), and (3) size information (size of the block image data). Inaddition, in (4) next-original presence/absence information is reflectedthe information of the next-original information register 43 d in stepST060.

[Transfer Processing]

The transfer procedure of the image data stored in the transfer buffer43 b will be described according to the flow in FIG. 9. The scannerapparatus B determines whether “Read Scan” is received from the lowerdriver executing section 22 b by step ST027 (ST036), and in the case ofa positive determination, determines whether or not the transfer buffer43 b has image data (block image data, 1 MB) corresponding to onetransfer from the information of the memory control section 41 b(ST037). In the case of a positive determination, the apparatus Battaches the information about the block image data in the informationregister 43 c using the information attaching means to transfer (ST038).Then, after transferring the block image data, the apparatus B releasesthe area in the transfer buffer 43 b in which the block image data waswritten to enable another image data to be written again (ST039).

Next, the scanner apparatus B determines whether or not the transferredblock image data is the final block of the page (ST040). In the case ofa negative determination, steps ST036 to ST040 are repeated (receptionof Read Scan 2 and transfer of image block data is repeated) to transferthe block image data up to the final block data. In the case of apositive determination, it is determined whether or not there isinformation indicative of the next-page original being present (ST041),and when there is the next page, steps ST036 to ST042 are repeated totransfer up to the final block data of the final original sheet (finalpage). When there is no next page, the transfer processing is finished.

In addition, this embodiment shows the example where the driver isdivided into the higher driver conforming to specifications such asTWAIN and the like and the lower driver located between the higherdriver and the scanner apparatus, and the lower driver makes adjustmentsbetween the scanner apparatus and the higher driver. As another example,there is the case that an application is in conformity withspecifications such as TWAIN and the like. In this case, the driverbetween the application and the scanner apparatus may make adjustmentsas in the lower driver of this embodiment, and also in this, it ispossible to reduce the processing time of the entire system.

Conventionally, since the control CPU 41 of the scanner apparatus Bstarts feeding and reading of the next original sheet after receiving“scan start instruction (Start Scan)” from the higher driver executingsection 22 a, it takes a time until the higher driver executing section22 a acquires the next-page image data after transmitting an“instruction command for data transfer (Read Scan)”, but in theinvention, as described later, it is possible to prepare image data ofthe next original sheet by starting feeding the next original sheet andexecuting reading independently irrespective of the presence or absenceof “scan start instruction “(Start Scan)” from the higher driverexecuting section 22 a. It is thereby possible to reduce the timerequired for the higher driver executing section 22 a to acquire thenext-page image data after transmitting an “instruction command for datatransfer (Read Scan)”. Accordingly, the processing time of the entiresystem is shorten until the higher driver executing section 22 aacquires image data corresponding to all the pages, and this effectincreases as the number of original document sheets to read increases.

Further, with respect to inquiry about the presence or absence ofnext-page image data from the higher driver executing section 22 a,since the presence/absence information is conventionally transmitted(transferred) to the higher driver executing section 22 a bycommunication with the scanner apparatus B, this communication requiresa time, and the transmission is delayed in the “scan start instruction(Start Scan)” and consequently in the “instruction command for datatransfer (Read Scan)”. In the invention, however, the lower driverexecuting section 22 b replies using the information (final blockinformation) attached to the image data, it is thereby possible toexchange the information within the PC, reduced is the time lapsed untiltransmission of the “scan start instruction (Start Scan)” and“instruction command for data transfer (Read Scan)”, and as a result, itis possible to shorten the processing time of the entire system. Thiseffect also increases as the number of original sheets to readincreases.

In addition, this application claims priority from Japanese PatentApplication No. 2008-157436 incorporated herein by reference.

1. A method of reading document image data scanned by a scanner apparatus and of transferring the image data to a data reception apparatus, comprising: setting memory areas for storing image data in a data storage section of the data reception apparatus and setting a reading condition, upon receipt of a scan start command from the data reception apparatus; transmitting a scan start command for instructing the scanner apparatus to start reading operations; instructing the scanner apparatus to transmit the image data, to receive and store the image data in the data storage section; transferring the image data stored in the transfer data storage section to the data reception apparatus in response to a data transferring request command from a host apparatus; transmitting a document end signal received from the scanner apparatus to the data storage section; and executing feeding of subsequent original document sheets based on available status of the data storage section, without transmitting another scan start command for instructing the scanner apparatus to start reading operation of the subsequent original document sheets.
 2. The method of reading document image data according to claim 1, further comprising: determining whether or not a distance from a rear end of a preceding original document sheet is a predetermined length or more, and concurrently, whether or not an available space of the transfer data storage section is a predetermined amount or more, and controlling the feeding section based on determination results from the determining section in feeding the second and subsequent original document sheets.
 3. The method of reading document image data according to claims 1, further comprising: transferring the image data from the transfer data storage section to the data reception apparatus on a basis of a unit of block with a predetermined length.
 4. The method of reading document image data according to claims 1, further comprising: transmitting the image data request command for requesting image data to the scanner apparatus corresponding to available status of the received data storage section.
 5. The method of reading document image data according to claim 1, further comprising: attaching information about the image data together with the image data transmitted to the data reception apparatus; and controlling the data reception apparatus using the information attached to the image data.
 6. The method of reading document image data according to claim 5, further comprising: determining whether a next block of the image data will be transmitted or not to the data storage section, based on the information attached to the image data: and transmitting data presence/absence information of the next block of the image data. 